热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

大熊君{{bb}}移动开发之旅(第一季)_html/css_WEB-ITnose

大熊君{{bb}}移动开发之旅(第一季)
一,开篇概述

Hi,大家好!大熊君又和大家见面了,从这篇文章开始我要和大家聊聊移动开发的话题,这部分文章共8季,分别从不同角度来讲解什么是移动开发?移动开发涉及到什么方面的技术点以及移动开发中的常见问题和疑难杂症。

我们指的移动开发,实际上就是使用web技术------它主要包含“h5,css3,Javascript”等技术,通过(Phonegap / Cordova-一个跨平台的并且已经有一整套相关生态系统包括工具,论坛,开发者。你能通过它来利用HTML5的API以及原生API。

     

开发出一个真正的移动应用。此平台也遵从HTML5规范以协助web应用的转化。)在跨平台性,可移植性方面,具有无可比拟的优势。

背景了解:下面是一张信息图,为我们详细对比了纯web(HTML5),混合App(Hybrid)和原生App(Native)三种移动开发路线的差异。

    

一些重点差异:

  开发难度移动web和混合App开发难度对于web开发者来说相对较低,而且可以充分利用现有的web开发工具和工作流程

  发布渠道和更新方式------混合App可以在应用商店App Store发布,但可以自主更新,而原生App的更新必须通过应用商店App

  移动设备本地API访问------混合App可以通过Javascript API访问到移动设备的摄像头,GPS,而原生App可以通过原生编程语言访问设备所有功能。

  跨平台和可移植性------基于浏览器的移动web最好的可移植性和跨平台表现;混合App也能节省跨平台的时间和成本,只需编写一次核心代码就可部署到多个平台,而原生App的跨平台性能

  搜索引擎友好------只有移动web对搜索引擎友好,可与在线营销

  货币化------混合App除广告外,还支持付费下载及程序内购买;原生App的程序内购买金额2012年首次超过

  消息推送------只有混合App和原生App支持消息推送,这能增加用户忠诚度。

二,进入移动开发话题

  就基于web技术的移动应用开发来说,其实本质是不变的,与PC端开发很类似,所以说换汤不换药,不管什么类型的应用,必须有一个友好的界面交互,首先就是布局的问题,移动布局和传统的基于PC

浏览器布局方式还是有区别的,所以今天就从布局说起,由浅入深逐步提高。好了进入重点部分,先看一个小栗子,如下好比这样:

  

  我们分为三步骤去做这件事:

  (1),准备测试虚拟设备,我这里用的是chrome自带的小工具

    

  (2),建立一个html页面,如“bb.html”bb.html

    

 1  2  3  4    5    6    7    8    9   10   11 12 13   大熊君移动开发之旅14   15   

16

17

哈哈哈,我是大熊君{{bb}} (●'?'●))18

哈哈哈,我是大熊君{{bb}} (●'?'●)) 19

哈哈哈,我是大熊君{{bb}} (●'?'●)) 20

哈哈哈,我是大熊君{{bb}} (●'?'●)) 21

哈哈哈,我是大熊君{{bb}} (●'?'●)) 22

哈哈哈,我是大熊君{{bb}} (●'?'●)) 23

哈哈哈,我是大熊君{{bb}} (●'?'●)) 24

哈哈哈,我是大熊君{{bb}} (●'?'●)) 25

哈哈哈,我是大熊君{{bb}} (●'?'●)) 26

哈哈哈,我是大熊君{{bb}} (●'?'●)) 27

哈哈哈,我是大熊君{{bb}} (●'?'●)) 28

哈哈哈,我是大熊君{{bb}} (●'?'●)) 29

哈哈哈,我是大熊君{{bb}} (●'?'●)) 30

哈哈哈,我是大熊君{{bb}} (●'?'●)) 31

哈哈哈,我是大熊君{{bb}} (●'?'●)) 32

哈哈哈,我是大熊君{{bb}} (●'?'●)) 33

哈哈哈,我是大熊君{{bb}} (●'?'●)) 34

哈哈哈,我是大熊君{{bb}} (●'?'●)) 35

哈哈哈,我是大熊君{{bb}} (●'?'●)) 36

哈哈哈,我是大熊君{{bb}} (●'?'●)) 37

哈哈哈,我是大熊君{{bb}} (●'?'●)) 38

哈哈哈,我是大熊君{{bb}} (●'?'●)) 39

哈哈哈,我是大熊君{{bb}} (●'?'●)) 40

哈哈哈,我是大熊君{{bb}} (●'?'●)) 41

42

43
如果大家喜欢,推荐哦~~~
44 45

  css代码如下:

   

 1 .header,.footer,.wrap-page{ 2   position:absolute; 3   left:0; 4   right:0; 5     color:#f8f8f8; 6 } 7 .header,.footer{ 8   height:44px; 9   background-color: #fff;10   text-align: center;11   z-index:900;12   line-height:44px;13    background:#C10066;14 }15 .header{16   top: 0;17   border-bottom: 1px solid #f00;18 }19 .footer{20   bottom: 0;21   border-top: 1px solid #f00;22 }23 .wrap-page{24   top: 44px;25   bottom: 44px;26   overflow-y:auto;27   -webkit-overflow-scrolling:touch;28   color:#333;29 }30 .page{31   padding: 10px;32 }33 .page p{34   margin-bottom: 10px;35 }

  以下是实际效果,如下:

    

三,分析一下

  1,

// 上面的代码依次表示设置宽度为设备的宽度,默认不缩放,不允许用户缩放(即禁止缩放),在网页加载时隐藏地址栏与导航栏(ios7.1新增)。

  2,

width ? viewport的宽度height ? viewport的高度initial-scale ? 初始的缩放比例minimum-scale ? 允许用户缩放到的最小比例maximum-scale ? 允许用户缩放到的最大比例user-scalable ? 用户是否可以手动缩放

  3,

-webkit-overflow-scrolling:touch 来实现滚动,当然对于不支持的,也可以使用“iscroll”来兼容,而iscroll同样也需要一个固定高度的容器来包裹可滚动的内容。

  

  小结一下:移动端布局很多都采用Css3提供的属性支持,如果不兼容或者性能不好可以通过js做兼容处理,具体布局时遵循三个原则,1------使用百分比方式,不论宽高还是字体大小是一样处理的方式。

 2------使用相对布局方式处理。3-------设置meta标签进行移动应用的一些预设处理。

(四),最后总结

  (1),使用百分比方式合理布局。

  (2),使用相对布局方式处理。

  (3),不多练习不断尝试多种布局体验,总之空间有限想法无限。

               哈哈哈,本篇结束,未完待续,希望和大家多多交流够沟通,共同进步。。。。。。呼呼呼……(*^__^*)      

推荐阅读
  • 本文介绍了响应式页面的概念和实现方式,包括针对不同终端制作特定页面和制作一个页面适应不同终端的显示。分析了两种实现方式的优缺点,提出了选择方案的建议。同时,对于响应式页面的需求和背景进行了讨论,解释了为什么需要响应式页面。 ... [详细]
  • 本文整理了常用的CSS属性及用法,包括背景属性、边框属性、尺寸属性、可伸缩框属性、字体属性和文本属性等,方便开发者查阅和使用。 ... [详细]
  • CSS|网格-行-结束属性原文:https://www.gee ... [详细]
  • css元素可拖动,如何使用CSS禁止元素拖拽?
    一、用户行为三剑客以下3个CSS属性:user-select属性可以设置是否允许用户选择页面中的图文内容;user-modify属性可以设置是否允许输入 ... [详细]
  • ImgettingabugwithInternetExplorer.Theiframedoesnthavecorrectsizeanditisdisplayedo ... [详细]
  • 使用正则表达式爬取36Kr网站首页新闻的操作步骤和代码示例
    本文介绍了使用正则表达式来爬取36Kr网站首页所有新闻的操作步骤和代码示例。通过访问网站、查找关键词、编写代码等步骤,可以获取到网站首页的新闻数据。代码示例使用Python编写,并使用正则表达式来提取所需的数据。详细的操作步骤和代码示例可以参考本文内容。 ... [详细]
  • 深入理解CSS中的margin属性及其应用场景
    本文主要介绍了CSS中的margin属性及其应用场景,包括垂直外边距合并、padding的使用时机、行内替换元素与费替换元素的区别、margin的基线、盒子的物理大小、显示大小、逻辑大小等知识点。通过深入理解这些概念,读者可以更好地掌握margin的用法和原理。同时,文中提供了一些相关的文档和规范供读者参考。 ... [详细]
  • 如何在HTML中获取鼠标的当前位置
    本文介绍了在HTML中获取鼠标当前位置的三种方法,分别是相对于屏幕的位置、相对于窗口的位置以及考虑了页面滚动因素的位置。通过这些方法可以准确获取鼠标的坐标信息。 ... [详细]
  • ECMA262规定typeof操作符的返回值和instanceof的使用方法
    本文介绍了ECMA262规定的typeof操作符对不同类型的变量的返回值,以及instanceof操作符的使用方法。同时还提到了在不同浏览器中对正则表达式应用typeof操作符的返回值的差异。 ... [详细]
  • 使用chrome编辑器实现网页截图功能的方法
    本文介绍了在chrome浏览器中使用编辑器实现网页截图功能的方法。通过在地址栏中输入特定命令,打开控制台并调用命令面板,用户可以方便地进行网页截图操作。 ... [详细]
  • 如何压缩网站页面以减少页面加载时间
    本文介绍了影响网站打开时间的两个因素,即网页加载速度和网站页面大小。重点讲解了如何通过压缩网站页面来减少页面加载时间。具体包括图片压缩、Javascript压缩、CSS压缩和HTML压缩等方法,并推荐了相应的压缩工具。此外,还提到了一款Google Chrome插件——网页加载速度分析工具Speed Tracer。 ... [详细]
  • 翻译 | 编写SVG的口袋指南(上)
    作者:DDU(沪江前端开发工程师)本文是原文翻译,转载请注明作者及出处。简介ScalableVectorGraphics(SVG)是在XML中描述二维图形的语言。这些图形由路径,图 ... [详细]
  • Iwouldliketobeabletohaveasidebarthatcanbetoggledinandoutonabuttonpress.However ... [详细]
  • JavaScript在常人看来都是门出不了厅堂的小语言,仅管它没有明星语言的闪耀,但至少网页的闪耀还是需要它的,同时它是一门很实用的语言,本人平时就喜欢拿它来写点实用工具或应用,本文演示用JavaSc ... [详细]
  • 我试图制作一个进度条,如果还有更多内容仍被隐藏,则显示箭头。为了更清楚,我做 ... [详细]
author-avatar
BeBe-DANIC_796
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有